package com.chat.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.chat.domain.dto.user.UserPasswordDTO;
import com.chat.domain.dto.user.UserProfileDTO;
import com.chat.domain.pojo.User;
import jakarta.servlet.http.HttpSession;

import java.util.List;

/**
 * @author wb
 * @since 2024-08-19
 */
public interface UserService extends IService<User> {

    /**
     * 更新用户信息
     *
     * @param userProfileDTO 用户更新数据传输对象
     * @return 是否更新成功
     */
    Boolean updateProfile(UserProfileDTO userProfileDTO, HttpSession session);

    /**
     * 更新用户密码
     *
     * @param userPasswordDTO 用户更新密码数据传输对象
     * @param session         会话
     * @return 是否更新成功
     */
    Boolean updatePassword(UserPasswordDTO userPasswordDTO, HttpSession session);


    List<User> getFriendsByUserId(Integer userId );

    List<User> getUsersByGroupId(Integer groupId);


    User getUserByUsername(String username);
}
